package com.yuanfeng.goods.entity;


import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yuanfeng.commoms.vo.goods.ManageSpecNameVO;
import com.yuanfeng.commoms.vo.goods.SpecParamJsonBeanDTO;
import com.yuanfeng.goods.dto.ManageSpecValueResultEditDTO;
import com.yuanfeng.goods.vo.ManageTransportAreaVO;
import com.yuanfeng.goods.vo.ManageTransportTemplateVO;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
 * ??Ʒ???????ݱ?-δ???ɷֱ(GoodsCommon)
 *
 * @since 2023-05-19 13:52:02
 */
@TableName("goods_common")
@Data
public class GoodsCommonEntity  implements Serializable {
    /**
     * 商品id
     */
    @TableId(type = IdType.AUTO)
    private Integer commonId;
    /**
     * 商品名称
     */
    private String commonName;
    /**
     * 商品广告词
     */
    private String commonPromotionTips;
    /**
     * 商品分类
     */
    private Integer catId;
    /**
     * 商品分类
     */
    private String catName;
    /**
     * 店铺id
     */
    private Integer shopId;
    /**
     * 店铺名称
     */
    private String shopName;
    /**
     * 店铺分类id 首尾用,隔开
     */
    private String shopCatId;
    /**
     * 店铺商品分类id  -- json
     */
    private String shopGoodsCatId;
    /**
     * 商品goods_id
     */
    private String goodsId;
    /**
     * 是否自营商品 1 不是 2 是
     */
    private Integer shopSelfSupport;
    /**
     * 店铺状态-3：开店成功 2:待审核付款 1:待审核资料  0:关闭
     */
    private Integer shopStatus;
    /**
     * 属性
     */
    private String commonProperty;
    /**
     * 规格名称
     */
    private String commonSpecName;
    /**
     * 规格值
     */
    private String commonSpecValue;
    /**
     * 品牌id
     */
    private Integer brandId;
    /**
     * 品牌名称
     */
    private String brandName;
    /**
     * 类型id
     */
    private Integer typeId;
    /**
     * 商品主图
     */
    private String commonImage;

    /**
     * 包装清单
     */
    private String commonPackingList;

    /**
     * 售后服务
     */
    private String commonService;
    /**
     * 商品状态 0下架，1正常，10违规（禁售）,2店铺下架商品下架,3商品删除
     */
    private Integer commonState;
    /**
     * 违规原因
     */
    private String commonStateRemark;
    /**
     * 商品审核 1通过，0未通过，10审核中
     */
    private Integer commonVerify;
    /**
     * 审核失败原因
     */
    private String commonVerifyRemark;
    /**
     * 商品添加时间
     */
    private Date commonAddTime;
    /**
     * 上架时间
     */
    private Date commonSellTime;
    /**
     * 商品价格
     */
    private BigDecimal commonPrice;

    /**
     * 市场价
     */
    private BigDecimal commonMarketPrice;

    /**
     * 成本价
     */
    private BigDecimal commonCostPrice;

    /**
     * 商品价格
     * 市场价
     * 成本价
     * 商品库存
     * 商品库存
     */
    private Integer commonStock;
    /**
     * 每人限购 0 代表不限购
     */
    private Integer commonLimit;

    /**
     * 商品库存警报线
     */
    private Integer commonAlarm;
    /**
     * 商家编号
     */
    private String commonCode;
    /**
     * 平台货号
     */
    private String commonPlatformCode;
    /**
     * 商品重量
     */
    private BigDecimal commonCubage;

    /**
     * 商品收藏量
     */
    private Integer commonCollect;
    /**
     * 商品评论数
     */
    private Integer commonEvaluate;
    /**
     * 商品销量
     */
    private Integer commonSalenum;
    /**
     * 是否开具增值税发票 1是，0否
     */
    private Integer commonInvoices;

    /**
     * 是否允许退货 1 是，2否
     */
    private Boolean commonIsReturn;

    /**
     * 顶部关联板式
     */
    private Integer commonFormatidTop;
    /**
     * 底部关联板式
     */
    private Integer commonFormatidBottom;
    /**
     * 商品推荐
     */
    private Integer commonIsRecommend;
    /**
     * 虚拟商品
     */
    private Integer commonIsVirtual;
    /**
     * 虚拟商品有效期
     */
    private Date commonVirtualDate;
    /**
     * 支持过期退款
     */
    private Integer commonVirtualRefund;
    /**
     * 0--> 固定运费   非零：transport_type_id  运费类型
     */
    private Integer transportTypeId;
    /**
     * 商品所在地 json
     */
    private String commonLocation;
    /**
     * 商品是否参加团购活动
     */
    private Integer commonIsTuan;
    /**
     * 商品是否参加促销0不参加,1砍价,2秒杀,3限时折扣,4拼团,5满减赠折
     */
    private Integer commonIsXian;
    /**
     * 商品是否参加加价购活动
     */
    private Integer commonIsJia;
    /**
     * 消费者保障-由店铺映射到商品，用来检索使用
     */
    @TableField(select = false)
    private Integer commonShopContract1;
    /**
     * 消费者保障-由店铺映射到商品，用来检索使用
     */
    @TableField(select = false)
    private Integer commonShopContract2;
    /**
     * 消费者保障-由店铺映射到商品，用来检索使用
     */
    @TableField(select = false)
    private Integer commonShopContract3;
    /**
     * 消费者保障-由店铺映射到商品，用来检索使用
     */
    @TableField(select = false)
    private Integer commonShopContract4;
    /**
     * 消费者保障-由店铺映射到商品，用来检索使用
     */
    @TableField(select = false)
    private Integer commonShopContract5;
    @TableField(select = false)
    private Integer commonShopContract6;
    /**
     * 一级分佣比例
     */
    private Integer cpsRate;
    /**
     * 二级分佣比例
     */
    private Integer secondCpsRate;
    /**
     * 三级分佣比例
     */
    private Integer thirdCpsRate;
    /**
     * 一级分佣比例
     */
    private BigDecimal commonCpsRate;

    /**
     * 二级分佣比例
     */
    private BigDecimal commonSecondCpsRate;

    /**
     * 三级分佣比例
     */
    private BigDecimal commonThirdCpsRate;

    /**
     * 是否参与推广 0不参与 1参与
     */
    private Integer commonIsDirectseller;
    /**
     * 店铺必须分销标记  1:不可删除   0：可以删除
     */
    private Integer productLockFlag;
    /**
     * 代理商id-可更改，该店铺下级都属于该代理商。
     */
    private String productAgentId;
    /**
     * 所在地,从店铺中同步，冗余检索使用
     */
    private Integer districtId;
    /**
     * 商品来源-供应商店铺id
     */
    private Integer supplyShopId;
    /**
     * 分销原产品
     */
    private Integer commonParentId;
    /**
     * 建议最低零售价
     */
    private BigDecimal goodsRecommendedMinPrice;

    /**
     * 建议最高零售价
     */
    private BigDecimal goodsRecommendedMaxPrice;

    /**
     * 是否为分销商品 0-自有商品
     */
    private Object productDistributorFlag;
    /**
     * 分销说明
     */
    private String commonDistributorDescription;
    /**
     * 1价格修改 2内容修改
     */
    private Object commonDistributorFlag;
    /**
     * 直属一级佣金-便于佣金排序
     */
    private BigDecimal commonCpsCommission;

    /**
     * 1正常添加，2淘宝导入。默认为1
     */
    private Integer commonGoodsFrom;
    /**
     * 售卖区域id,和yf_transport_area中的id对应
     */
    private Integer transportAreaId;
    /**
     * 运费模板
     */
    private Integer transportTemplate;

    private Integer commonIsMan;
    /**
     * 是否开票
     */
    private Integer commonIsInvoice;
    /**
     * 分类id列表
     */
    private String catIds;
    /**
     * 更新人
     */
    @TableField(select = false)
    private Integer commonUpdateBy;
    /**
     * 更新时间
     */
    private Date commonUpdateTime;
    /**
     * 锁定 1 锁定 2 不锁定
     */
    private Integer commonIsLocked;
    /**
     * 1:商城价2:小宝价格3:商城和小宝价组合
     */
    private Integer commonType;
    /**
     * 小宝价格
     */
    private BigDecimal commonBabyPrice;

    /**
     * 限购次数
     */
    private Integer restrictionTimes;
    /**
     * 限购天数
     */
    private Integer restrictionHours;
    /**
     * 操作人
     */
    private String orderOperator;
    /**
     * 操作时间
     */
    private Date orderOperatorTime;
    /**
     * 是否为聚宝1是
     */
    private Integer commonIsTreasure;
    /**
     * 商品点击数量
     */
    private Integer commonClick;
    /**
     * 角标id
     */
    private Integer cornerId;
    /**
     * 主图类型 1图片2视频
     */
    private Integer type;
    /**
     * 视频
     */
    private String commonVideo;
    /**
     * 商品是否屏蔽：1-否；2-是
     */
    private Integer commonIsScreen;
    /**
     * 提交审核时间
     */
    private Date commonVerifyTime;
    /**
     * 提交审核时间
     */
    private Date submitVerifyTime;
    /**
     * 商品规格
     */
    private String specParam;
    /**
     * 导入时保存图片名字
     */
    private String importNumber;
    /**
     * 创建者
     */
    private String createUser;
    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * 修改人
     */
    private String updateUser;
    /**
     * 修改时间
     */
    private Date updateTime;
    /**
     * 是否删除0:否;1:是
     */
    private Integer isDelete;
    /**
     * 版本号
     */
    private Integer sysVersion;
    /**
     * 时间戳
     */
    private Date ts;
    /**
     * 虚拟商品 0 是 1 否
     */
    private Integer virtualGoods;
    /**
     * 虚拟商品有效期
     */
    private Date periodOfValidity;
    /**
     * 过期退款 0 是 1 否
     */
    private Integer pastDue;
    /**
     * 积分商品 0是 1否
     */
    private Integer integralGoods;
    /**
     * 是否是门店自提商品 1是 2否
     */
    private Integer commonIsShopTake;
    /**
     * 1普通商品   2供应商商品  3 品牌店铺商品
     */
    private Integer goodsType;
    /**
     * 是否经销商品  0普通商品   1经销商品(商家一键上架供应商商品)  2购买经销商品（商家通过立即购买供应商上架的商品）
     */
    private Integer dealerGoodsFlag;
    /**
     * 是否是plus商品 0 不是 1 是
     */
    private Integer plusGoods;
    /**
     * plus商品创建时间
     */
    private Date plusTime;


    /**
     * 规格参数商品
     */
    @TableField(exist = false)
    private List<SpecParamJsonBeanDTO> specParamList;


    /**
     * 运输模板
     */
    @TableField(exist = false)
    private ManageTransportTemplateVO transportTemplates;

    /**
     * 运输区域
     */
    @TableField(exist = false)
    private ManageTransportAreaVO transportAreas;


    /**
     * 规格名称集合
     */
    @TableField(exist = false)
    private List<ManageSpecNameVO> commonSpecNameList;


    /**
     * 规格值集合
     */
    @TableField(exist = false)
    private List<ManageSpecValueResultEditDTO> commonSpecValueList;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}

